﻿#ifndef MAINVIEW_H
#define MAINVIEW_H
#include"XQMainView.h"
#include"XQTreeDockWidget.h"
#include"InventoryModel.h"
#include"ProductModel.h"
//主窗口视图
class MainView:public XQMainView
{
	Q_OBJECT
public:
	MainView(QWidget* parent = nullptr);
	~MainView();
	enum View;
	enum Catalogue;
public:
	void login(const XQUserData& user);
	void logout();
	void openUserInfoView(const XQUserData& user);
	void openModifyPasswordView(const XQUserData& user);
	void openUserManagement(const XQUserData& user);
	void openProductManagement(const XQUserData& user);
	void openInventoryManagement(const XQUserData& user);
	void openOrderManagement(const XQUserData& user);
signals://信号
	void loginSignals(const XQUserData& user);
	void logoutSignals();
	void modifyUserInfoSignals(const XQUserData& user);
	void modifyPasswordSignals(const XQUserData& user);
	void userManagementSignals(const XQUserData& user);
	void addUserSignals(const XQUserData& user);
	void removeUserSignals(const XQUserData& user);
public:
	//初始化
	virtual void init();
protected:
	void init_catalogue();
	//仓库目录
	void init_stashCatalogue();
};
enum  MainView::View
{
	UserInfo,
	ModifyPassword,
	UserManagement
};
enum  MainView::Catalogue
{
	StashManage= XQTreeDockWidget::Item::SystemSetup+100,//仓库管理
	Product,//
	Inventory,
	Order
};
#endif